home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / rbbs_pc / aed243a.zip / R-PCUTOG.MRG < prev    next >
Text File  |  1990-06-10  |  23KB  |  669 lines

  1. * ------------[ BLED merge (c) Ken Goosens ]-------------
  2. * Merge this against RBBS-PC.BAS to produce R-PCUTOG.BAS
  3. * RBBS-PC.BAS:  Date 5-26-1990  Size 156425 bytes
  4. * ------------[ Created 06-10-1990 01:56:59 ]------------
  5. * REPLACING old line(s) by new
  6. 345 LOCATE 24,1
  7.     CALL AMorPM
  8.     ZUserLogonTime! = TIMER
  9.     ZTimeLoggedOn$ = TIME$
  10.     ZLinesPrinted = 0
  11.     ZExpertUserDef = ZExpertUser
  12.     ZExpertUser = ZFalse
  13.     CALL SetExpert
  14.     ZOutTxt$ = ""
  15.     IF NodesInSystem > 1 THEN _
  16. * ------[ first line different ]------
  17.        ZOutTxt$ = " - Node " + ZNodeID$
  18.     IF ZReliableMode THEN _
  19.        ZOutTxt$ = ZOutTxt$ + " (Reliable Connect)"
  20.     IF ZRBBSName$ <> "" THEN _
  21.        CALL QuickTPut1 ("Welcome to " + ZRBBSName$ + ZOutTxt$)
  22.     ZTestParity = ZTrue
  23.     ZStopInterrupts = ZTrue
  24.     ZFileName$ = ZPreLog$
  25.     CALL FlushCom (WasX$)
  26.     ZCommPortStack$ = ""
  27. * REPLACING old line(s) by new
  28. * ------[ first line different ]------
  29. 754 CALL QuickTPut1 ("Guest privileges granted.  Re-register on future calls")
  30.     ZUserSecSave = ZUserSecLevel
  31.     GOTO 832
  32. * REPLACING old line(s) by new
  33. 755 IF ZPrivateDoor THEN _
  34.        ZUserIn$ = ZPswd$ : _
  35.        ZWasZ$ = ZUserIn$ : _
  36.        RETURN
  37.     GOSUB 12800
  38. * ------[ first line different ]------
  39.     ZOutTxt$ = "Re-Enter password for Verification"
  40.     GOSUB 45010
  41.     SWAP ZWasZ$,ZUserIn$
  42.     CALL AllCaps (ZWasZ$)
  43.     IF ZUserIn$ <> ZWasZ$ THEN _
  44.        CALL QuickTPut1 ("Passwords Don't Match!") : _
  45.        GOTO 755
  46.     RETURN
  47. '
  48. ' ***  R - COMMAND FROM NEWUSER ROUTINE - REGISTER   **
  49. '
  50. * REPLACING old line(s) by new
  51. 760 GOSUB 755
  52.     CALL AllCaps (ZWasZ$)
  53.     LSET ZPswd$ = ZWasZ$
  54. * ------[ first line different ]------
  55. '   CALL QuickTPut1 ("Please REMEMBER your password")
  56.     ZUserTextColor = 37
  57.     ZTempSecLevel = ZUserSecLevel
  58.     CALL Protocol
  59.     ZUserXferDefault$ = "N"
  60.     ZProtoPrompt$ = "None"
  61.     IF ZNewUserSetsDefaults THEN _
  62.        ZBypassTimeCheck = ZTrue : _
  63.        GOSUB 43000 : _
  64.        ZBypassTimeCheck = ZFalse : _
  65.        CALL Graphic (ZUserGraphicDefault$,ZFileName$) : _
  66.        GOSUB 42805 : _
  67.        GOSUB 42700 : _
  68.        GOSUB 42750 _
  69.     ELSE ZUpperCase = ZFalse : _
  70.          ZHiLiteOff = ZTrue : _
  71.          CALL SetGraphic (0,ZUserGraphicDefault$) : _
  72.          ZNulls = ZFalse : _
  73.          ZFullScreenEditor = ZFalse
  74.     ZPageLength = ZPageLengthDef
  75.     GOSUB 12900
  76.     GOSUB 5135
  77.     CALL DefaultU
  78. * REPLACING old line(s) by new
  79. 800 CALL DoorReturn
  80.     IF ZAdjustedSecurity THEN _
  81.        GOSUB 5135
  82.     IF ZOrigCnfg$ = ZCurDef$ THEN _
  83.        ZMainUserFileIndex = ZUserFileIndex : _
  84.        ZOrigSec = ZUserSecLevel : _
  85.        ZUserSecSave = ZUserSecLevel : _
  86.        ZOrigUserName$ = ZActiveUserName$
  87.     ZTimesLoggedOn = CVI(MID$(ZUserOption$,1,2)) - _
  88.        ((ZOrigCnfg$ <> ZCurDef$ OR NOT SubBoard) AND _
  89.         (NOT ZPrivateDoor) AND (NOT ZExitToDoors))
  90.     GOSUB 9500
  91.     IF (NOT ZExitToDoors) AND (NOT SubBoard) THEN _
  92.        CALL UpdtCalr (ZActiveUserName$ + " from " + ZWasCI$ + _
  93.                  " Lvl" + STR$(ZUserSecLevel) + " " + TIME$,2)
  94.     PrevLastOn$ = ZLastDateTimeOn$
  95.     IF ZLocalUser THEN _
  96.        ZTalkToModemAt$ = "9600" : _
  97.        ZBaudParity$ = "9600 BAUD,N,8,1" : _
  98.        ZModemInitBaud$ = "9600" : _
  99.        ZSnoop = ZTrue : _
  100.        ZLineFeeds = ZTrue
  101.     CALL SetCrLf
  102.     CALL SetPrompt
  103.     CALL XferType (2,ZTrue)
  104.     IF NOT SubBoard THEN _
  105.        BoardCheckDate$ = PrevLastOn$
  106.     IF ZPrivateDoor OR SubBoard THEN _
  107.        GOTO 815
  108.     GOSUB 465
  109.     IF (ZEightBit AND _
  110.        ZAutoDownDesired) OR _
  111.        ZAskID THEN _
  112.        CALL TestUser
  113.     CALL QuickTPut1 ("Logging " + ZActiveUserName$)
  114.     CALL Talk (1,ZOutTxt$)
  115. * ------[ first line different ]------
  116.     CALL QuickTPut1 ("RBBS-PC " + ZVersionID$ + " Node " + ZNodeID$ + _
  117.                 ", Operating at " + ZBaudParity$)
  118.     CALL SkipLine (1)
  119.     Attempts = 0
  120. '
  121. ' *****  NOTIFY CALLER IF ABLE TO "AUTODOWN"  ****
  122. '
  123. '   IF ZEightBit AND ZAutoDownYes THEN _
  124. '      ZOutTxt$ = CHR$(9) + _
  125. '           ZReturnLineFeed$ + _
  126. '           "You may use AUTODOWNLOADing!" : _
  127. '      CALL RingCaller : _
  128. '      CALL DelayTime(4)
  129. * REPLACING old line(s) by new
  130. 850 ZSubParm = 2
  131.     CALL Line25
  132.     CALL SkipLine (1)
  133.     IF TurboLogon THEN _
  134.        ZBulletinSave$ = ZBulletinMenu$ : _
  135.        GOSUB 9750 : _
  136.        GOTO 900
  137.     CALL CountNewFiles (BoardCheckDate$,ZMsgPtr(),LastNew,ZOutTxt$)
  138.     IF ZFMSDirectory$ <> "" THEN _
  139. * ------[ first line different ]------
  140.        CALL QuickTPut1 ("There are" + ZOutTxt$ + STR$(LastNew) + " new file(s) since last call") _
  141.     ELSE GOTO 852
  142.     IF ZNewUser OR LastNew < 1 OR NOT ZNewFilesCheck THEN _
  143.        GOTO 852
  144.     WasL = LEN(ZDnldDrives$)
  145.     SecNum = 19
  146.     IF (NOT ZSkipFilesLogon) AND _
  147.        ZUserSecLevel >= ZOptSec(SecNum) THEN _
  148.           ZOutTxt$ = "Review new files to download ([Y],N)" : _
  149.           GOSUB 12999 : _
  150.           IF NOT ZNo THEN _
  151.              ZLastIndex = 3 : _
  152.              ZAnsIndex = 1 : _
  153.              ZWasQ = 3 : _
  154.              ZUserIn$(2) = MID$(BoardCheckDate$,1,2) + _
  155.                      MID$(BoardCheckDate$,4,2) + _
  156.                      MID$(BoardCheckDate$,7,2) : _
  157.              ZWasY$ = ZUserIn$(3) : _
  158.              CALL BreakFileName (ZFMSDirectory$,DR$,ZWasY$,WasX$,ZFalse) : _
  159.              ZUserIn$(3) = ZWasY$ : _
  160.              TimeLockExempt = ZTrue : _
  161.              GOSUB 20185 : _
  162.              ZLastIndex = 0 : _
  163.              TimeLockExempt = ZFalse
  164. * REPLACING old line(s) by new
  165. 1500 IF ZAnsIndex < ZLastIndex THEN _
  166.         GOTO 1510
  167. * ------[ first line different ]------
  168.      ZOutTxt$ = "A)utodwnld   B)ullet  C)ase     E)ditor   F)ile   H)ilite"
  169.      CALL ColorPrompt (ZOutTxt$)
  170.      CALL QuickTPut1 (ZOutTxt$)
  171.      ZOutTxt$ = "L)ine feeds  N)ulls   T)urboKey X)pert    !)bell"
  172.      CALL ColorPrompt (ZOutTxt$)
  173.      CALL QuickTPut1 (ZOutTxt$)
  174.      ZOutTxt$ = "Toggle which options On/Off?" + ZPressEnter$
  175. * REPLACING old line(s) by new
  176. 1510 GOSUB 12930
  177.      IF ZWasQ=0 THEN _
  178.         RETURN
  179.      ZWasZ$ = ZUserIn$(ZAnsIndex)
  180.      CALL AllCaps (ZWasZ$)
  181. * ------[ first line different ]------
  182.      ZFF = INSTR("ABCFHLNTX!E",ZWasZ$)
  183.      IF ZFF < 1 THEN _
  184.         GOTO 1500
  185.      CALL Toggle (ZFF)
  186.      GOSUB 12997
  187.      GOTO 1500
  188. '
  189. ' ****  I - COMMAND FROM MAIN MENU (DISPLAY INITIAL WELCOME)  ***
  190. '
  191. * REPLACING old line(s) by new
  192. 1900 GOSUB 5344
  193.      IF ZPrivateDoor THEN _
  194.         ActionFlag = ZTrue
  195.      ZPrevBase$ = ZActiveMessageFile$
  196.      ShowActive = ZFalse
  197.      IF NOT ActionFlag THEN _
  198.         CALL QuickTPut ("Checking messages in " + ConfFileName$,0) : _
  199.         ShowActive = ZTrue _
  200. * ------[ first line different ]------
  201.      ELSE CALL QuickTPut ("Loading Messages",0)
  202.      ZUserIn$ = ""
  203.      WasI = 0
  204.      MsgsFromUser = ZFalse
  205.      ActiveMessages = 0
  206.      MailReported = ActionFlag
  207.      FirstOld = ZTrue
  208.      GOSUB 23000
  209.      MsgRec = FirstMsgRecord
  210.      MaxMsgs = VAL(MID$(ZMsgRec$,89,7))
  211.      IF MaxMsgs > WasMM THEN _
  212.         MaxMsgs = WasMM
  213.      REDIM ZMsgPtr(MaxMsgs,2)
  214.      NumDots = 0
  215. * REPLACING old line(s) by new
  216. 1950 IF NOT MailReported THEN _
  217.         ZOutTxt$ = "Sorry, " + _
  218.              ZFirstName$ + _
  219. * ------[ first line different ]------
  220.              ", No " + ZUserIn$(0) + "Mail for you" : _
  221.         GOSUB 12975
  222.      IF MsgsFromUser = 0 OR NOT ZMsgReminder THEN _
  223.         GOTO 1961
  224.      IF ActionFlag THEN _
  225.         GOTO 1961
  226.      ZOutTxt$ = "Mail you left"
  227.      GOSUB 12976
  228. * REPLACING old line(s) by new
  229. 2065 IF Subject$ <> "" THEN _
  230. * ------[ first line different ]------
  231.         ZOutTxt$ = "Change subject from " + _
  232.              Subject$ + _
  233.              " to" : _
  234.         GOSUB 12932 _
  235.      ELSE ZOutTxt$ = "Subject" + ZPressEnter$ : _
  236.           ZParseOff = ZTrue : _
  237.           GOSUB 12932
  238.      IF LEN(ZUserIn$) > 25 THEN _
  239.         ZOutTxt$ = "25 Char. Max" : _
  240.         GOSUB 12979 : _
  241.         GOTO 2065
  242.      IF ZWasQ = 0 THEN _
  243.         IF Subject$ <> "" THEN _
  244.            RETURN _
  245.         ELSE GOSUB 2435 : _
  246.              IF ZYes THEN _
  247.                 RETURN 5160 _
  248.              ELSE GOTO 2065
  249.      Subject$ = ZUserIn$
  250.      CALL AllCaps (Subject$)
  251.      OrigSubject$ = Subject$
  252.      RETURN
  253. '
  254. ' *****  ENTER MAIN BODY OF MESSAGE  ****
  255. '
  256. * REPLACING old line(s) by new
  257. * ------[ first line different ]------
  258. 2100 IF NOT ZFullScreenEditor OR ZGetExtDesc THEN _
  259.         GOTO 2120
  260. * INSERTING new line(s)
  261. 2110 CALL Ansied (MsgTo$, OrigSubject$, MsgLockLines)
  262.      I = ZSubParm
  263.      CALL SkipLine(1)
  264.      IF I = -2 THEN      ' Sleep Disconnect
  265.         GOTO 10590
  266.      ELSEIF I = -1 THEN  ' Lost Carrier
  267.         GOTO 10595
  268.      ELSEIF I = 1 THEN   ' Save Message
  269.         GOTO 3400
  270.      ELSEIF I = 2 THEN   ' Abort Message
  271.         GOTO 2430
  272.      END IF
  273. 2120 ZOutTxt$ = "Type " + _
  274.           ZMsgHeader$ + _
  275.           STR$(ZMaxMsgLines) + _
  276.           " lines max" + _
  277.           ZPressEnter$
  278.      GOSUB 12975
  279.      GOSUB 3200
  280. * REPLACING old line(s) by new
  281. * ------[ first line different ]------
  282. 2350 IF ZCurPUI$ = "" OR SubBoard THEN
  283.         ZCurPUI$ = ZMainPUI$
  284.      ELSE
  285.         CALL BreakFileName(ZCurPUI$,Path$,Name$,Ext$,ZTrue)
  286.         IF RIGHT$(Name$,1) = "C" OR RIGHT$(Name$,1) = "G" THEN
  287.            Name$ = LEFT$(Name$,LEN(Name$) - 1)
  288.         END IF
  289.         ZCurPUI$ = Path$ + Name$ + Ext$
  290.      END IF
  291.      CALL FindIt (ZCurPUI$)
  292.      ZCustomPUI = ZOK
  293.      IF NOT ZOK THEN _
  294.         ZCurPUI$ = ""
  295.      ZPrevPUI$ = ""
  296.      RETURN
  297. '
  298. ' ****  ABORT MESSAGE   ***
  299. '
  300. * REPLACING old line(s) by new
  301. * ------[ first line different ]------
  302. 2520 ZOutTxt$ = "Up to and including Line # ( ENTER =" + STR$(Mark1) + " )"
  303.      GOSUB 3302
  304.      IF ZWasQ = 0 THEN _
  305.         Mark2 = Mark1 _
  306.      ELSE Mark2 = ZTestedIntValue
  307.      CALL SkipLine(1)
  308.      IF Mark1 > Mark2 THEN _
  309.         ZOutTxt$ = "Beginning exceeds end.  Block NOT deleted!" : _
  310.         GOSUB 12979 : _
  311.         GOTO 2555
  312.      IF Mark1 <= MsgLockLines THEN _
  313.         ZOutTxt$ = "You can NOT delete lines 1 -" + STR$(MsgLockLines) + "!" : _
  314.         GOSUB 12979 : _
  315.         GOTO 2555
  316. * REPLACING old line(s) by new
  317. 3405 GOSUB 4910
  318.      MsgRecSave$ = ZMsgRec$
  319.      MsgCorrected = ZFalse
  320.      GOSUB 23100
  321. * ------[ first line different ]------
  322.      ZOutTxt$ = "Adding new message #" + _
  323.           STR$(HighMsgNumber + 1)
  324.      IF NOT ZLocalUser THEN _
  325.         CALL UpdtCalr (ZOutTxt$,1)
  326.      GOSUB 12978
  327.      ZWasSL = 0
  328.      ZWasN$ = ""
  329.      ZLastIndex = 0
  330.      IF LowMsgNumber = 0 THEN _
  331.         LowMsgNumber = 1 : _
  332.         HighMsgNumber = 1 _
  333.      ELSE HighMsgNumber = HighMsgNumber + 1
  334. * REPLACING old line(s) by new
  335. 4380 ZNonStop = (ZPageLength < 1)
  336.      WasA1$ = "Msg #" + _
  337.            STR$(LowMsgNumber) + _
  338.            "-" + _
  339.            MID$(STR$(ZMsgPtr(ActiveMessages,2)),2) + _
  340.            " (H)elp,S)ince,L)ast"
  341.      IF AddressedToUser OR ToRequested OR FromRequested THEN _
  342.         ZWasY$ = LEFT$("TO",-2*(ToRequested OR AddressedToUser)) + _
  343.              LEFT$("/",-AddressedToUser) + _
  344.              LEFT$("FROM",-4*(FromRequested OR AddressedToUser)) : _
  345. * ------[ first line different ]------
  346.         CALL QuickTPut1 ("Only msgs "+ZWasY$+" you.  Read from what message # (e.g. 1+,4010-)") _
  347.      ELSE WasA1$ = WasA1$ + _
  348.                ",T)o,F)rom,M)ine"
  349.      IF SearchString$ = "" THEN _
  350.         WasA1$ = WasA1$ + _
  351.              ",text" _
  352.      ELSE CALL QuickTPut1 ("Only msgs with text " + SearchString$ + ".  Read from what message # (e.g. 1+,4010-)")
  353. * REPLACING old line(s) by new
  354. * ------[ first line different ]------
  355. 4390 ZOutTxt$ = WasA1$ + ",[Q]uit)"
  356.      ZMacroMin = 99
  357.      ZTurboKey = 0
  358. * REPLACING old line(s) by new
  359. 4515 IF Forward THEN _
  360.         ZOutTxt$ = "No new messages" : _
  361.         ZLastMsgRead = HighMsgNUmber : _
  362.         ZMailWaiting = ZFalse _
  363. * ------[ first line different ]------
  364.      ELSE ZOutTxt$ = "No such message #" + _
  365.                STR$(CurMsg)
  366.      GOSUB 12979
  367.      GOTO 4370
  368. * REPLACING old line(s) by new
  369. 4624   QuotedReply = ZTrue
  370.        ZLinesInMsg = ZLinesInMsg - 1
  371.        IF HiLitedLine > 0 THEN _
  372.           ZOutTxt$(HiLitedLine) = ZOutTxt$(0) : _
  373.           HiLitedLine = 0
  374.        IF MsgFwd THEN _
  375.           TempRightMargin = ZRightMargin _
  376.        ELSE _
  377.           TempRightMargin = ZRightMargin - 2
  378.        CALL WordWrap (TempRightMargin,ZLinesInMsg,ZOutTxt$())
  379.        IF ZLinesInMsg > ZMsgDim THEN _
  380.           ZLinesInMsg = ZMsgDim : _
  381. * ------[ first line different ]------
  382.           CALL QuickTPut1 ("Original message truncated to " + _
  383.                       STR$(ZMsgDim) + " lines for editing!")
  384.        IF MsgFwd THEN GOTO 4625
  385.        FOR WasX = 1 TO ZLinesInMsg
  386.           IF LEFT$(ZOutTxt$(WasX),1) = ">" THEN _
  387.              ZOutTxt$(WasX) = ">" + ZOutTxt$(WasX) _
  388.           ELSE ZOutTxt$(WasX) = "> " + ZOutTxt$(WasX)
  389.        NEXT
  390. * REPLACING old line(s) by new
  391. 4626   ZWasZ$ = "L"
  392.        WasL = 1
  393. * ------[ first line different ]------
  394.        IF ZFullScreenEditor THEN
  395.           GOSUB 2110
  396.        ELSE
  397.           IF ZLinesInMsg >= ZMaxMsgLines THEN _
  398.              CALL QuickTPut ("Msg cannot exceed" + _
  399.                          STR$(ZMaxMsgLines) + " lines! ",0)
  400.           IF NOT MsgFwd THEN _
  401.              CALL QuickTPut1 ("C continues reply.  Please 1st delete unneeded lines (eg. d 1 5)")
  402.           GOSUB 3200
  403.           GOSUB 3020
  404.           GOSUB 2300
  405.        END IF
  406.        GOTO 4628
  407. * REPLACING old line(s) by new
  408. * ------[ first line different ]------
  409. 4755 CALL QuickTPut1 ("Try a message or comment")
  410.      ZPageStatus$ = "Paged!"
  411.      CALL UpdtCalr ("Operator paged " + LEFT$(TIME$,5),2)
  412.      RETURN
  413. * REPLACING old line(s) by new
  414. 5328 WasX$ = ZConfName$ + _
  415.           "C.DEF"
  416.      CALL FindIt (WasX$)
  417.      SubBoard = ZOK
  418.      IF NOT SubBoard THEN _
  419.         CALL BreakFileName (ZMainMsgFile$,MsgDrvPath$,ZWasDF$,ZWasY$,ZTrue) : _
  420.         WasX$ = MsgDrvPath$ + WasX$ : _
  421.         CALL FindIt (WasX$) : _
  422.         SubBoard = ZOK
  423.      IF SubBoard THEN _
  424.         IF LEN(ZConfName$) = 6 THEN _
  425.            IF LEFT$(ZConfName$,4) = "RBBS" AND RIGHT$(ZConfName$,1) = "P" THEN _
  426.               SubBoard = ZFalse
  427.      IF NOT SubBoard THEN _
  428.         CALL BreakFileName (ZActiveUserFile$,UserDrvPath$,ZWasDF$,ZWasY$,ZTrue) : _
  429.         WasX$ = UserDrvPath$ + _
  430.              ZConfName$ + _
  431.              "U.DEF" : _
  432.         ZFileName$ = ZWelcomeFileDrvPath$ + _
  433.                      ZConfName$ + _
  434.                      "W.DEF" _
  435.         ELSE CALL ReadDef (WasX$) : _
  436.              IF ZErrCode > 0 THEN _
  437.                 CALL UpdtCalr ("Error"+STR$(ZErrCode)+" reading config file "+WasX$,2) : _
  438.                 ZErrCode = 0 : _
  439.                 ZInConfMenu = ZFalse : _
  440.                 ZOutTxt$ = "error reading subboard" : _
  441.                 GOTO 5341 _
  442.              ELSE WasX$ = ZMainUserFile$ : _
  443.                   ZFileName$ = "" : _
  444.                   CALL FindIt (ZMainMsgFile$) : _
  445.                   IF NOT ZOK THEN _
  446. * ------[ first line different ]------
  447.                      ZOutTxt$ = "message file missing for" : _
  448.                      ZInConfMenu = ZFalse : _
  449.                      GOTO 5341 _
  450.                   ELSE ZActiveMessageFile$ = ZMainMsgFile$ : _
  451.                        GOSUB 5343
  452.      UpdateDate = ZTrue
  453.      CALL FindIt (WasX$)
  454.      IF ZOK THEN _
  455.         GOTO 5330
  456. '
  457. ' *****  NO USER FILE - A PUBLIC CONFERENCE   ****
  458. '
  459.      ZMainUserFile$ = PrevMainUser$
  460.      IF (ZUserSecLevel < AutoAddSec) THEN _
  461.         GOTO 5340
  462.      GOTO 5345
  463.      'WasX$ = ZMainUserFile$
  464.      'ZSysopPswd1$ = ""
  465.      'ZSysopPswd2$ = ""
  466. '
  467. ' ****  CHECK CONFERENCE USER'S FILE  ***
  468. '
  469. * REPLACING old line(s) by new
  470. 5335 IF Found THEN _
  471.         GOSUB 9500 : _
  472.         ZMainUserFileIndex = -(SubBoard * ZUserFileIndex)_
  473.                                -((NOT SubBoard) * ZMainUserFileIndex) : _
  474.         Temp = -(SubBoard * ZMinLogonSec) _
  475.                -((NOT SubBoard) * AutoAddSec) : _
  476.         WasI = (ZUserSecLevel < OrigMainSec) : _
  477.         WasJ = (ZUserSecLevel < Temp) : _
  478.         WasK = (WasI AND WasJ) : _
  479.         IF WasK THEN _
  480.            ZOutTxt$ = "you have been locked out of" : _
  481.            GOTO 5341 _
  482.         ELSE GOSUB 5375 : _
  483.              GOTO 5345
  484. '
  485. ' **** USER NOT FOUND.  AUTO-ADD TO SUBBOARD IF SUFFICIENT SECURITY ***
  486. '
  487.      ZNewUser = SubBoard
  488.      IF SubBoard THEN _
  489.         AutoAddSec = ZMinLogonSec
  490.      IF (ZUserSecLevel >= AutoAddSec) AND _
  491.         (ZUserFileIndex > 0) AND (ZMainUserFileIndex > 0) THEN _
  492.         LSET ZUserRecord$ = UserRecordHold$ : _
  493. * ------[ first line different ]------
  494.         CALL QuickTPut1 ("Adding you to Conference " + ZConfName$) : _
  495.         MID$(ZUserOption$,3,2) = MKI$(0) : _
  496.         MID$(ZUserOption$,1,2) = MKI$(0) : _
  497.         ZActiveUserName$ = LEFT$(UserRecordHold$,30) : _
  498.         CALL Trim (ZActiveUserName$) : _
  499.         Temp = -(SubBoard * ZDefaultSecLevel) _
  500.                -((NOT SubBoard) * ZUserSecSave) : _
  501.         GOSUB 5370 : _
  502.         Temp = -(ZWasA * ZSysopSecLevel) - ((NOT ZWasA) * Temp) : _
  503.         LSET ZSecLevel$ = MKI$(Temp) : _
  504.         ZUserSecLevel = Temp : _
  505.         GOSUB 5375 : _
  506.         ZPageLength = ZPageLengthDef : _
  507.         GOSUB 12986 : _
  508.         GOSUB 12630 : _
  509.         UpdateDate = ZTrue : _
  510.         Found = ZTrue : _
  511.         GOTO 5335
  512.      IF ZUserSecLevel >= AutoAddSec THEN _
  513.         CALL QuickTPut1 ("Temporarily adding you to Conference " + ZConfName$) : _
  514.         ZActiveUserFile$ = PrevUser$ : _
  515.         UpdateDate = ZFalse : _
  516.         ZUserFileIndex = PrevIndex : _
  517.         GOSUB 5382 : _
  518.         ZUserFileIndex = 0 : _
  519.         GOTO 5345
  520.      ZNewUser = ZFalse
  521. * REPLACING old line(s) by new
  522. 5410 CALL Toggle(-9)
  523.      GOSUB 43020
  524.      ZFF = INSTR(ZDefaultXfer$,ZUserXferDefault$)
  525.      CALL Toggle(-5)
  526.      GOSUB 42810
  527.      CALL Toggle(-3)
  528.      CALL Toggle(-6)
  529.      CALL Toggle(-7)
  530.      CALL Toggle(-10)
  531.      CALL Toggle(-2)
  532.      CALL Toggle(-4)
  533.      CALL Toggle(-8)
  534.      CALL Toggle(-1)
  535. * ------[ first line different ]------
  536.      CALL Toggle(-11)
  537.      IF ZRestrictByDate AND ZDaysInRegPeriod > 0 THEN _
  538.         IF ZUserSecLevel > ZExpiredSec THEN _
  539.            CALL QuickTPut1 ("Registration expires " + ZExpirationDate$)
  540.      RETURN
  541. '
  542. ' *****  B - COMMAND FROM UTILITY MENU (300 TO 450 BAUD CHANGE)  ****
  543. '
  544. * REPLACING old line(s) by new
  545. 9510 UserOptions = CVI(MID$(ZUserOption$,9,2))
  546.      ZPromptBell = (UserOptions AND 1) > 0
  547.      ZExpertUser = (UserOptions AND 2) > 0
  548.      CALL SetExpert
  549.      ZNulls = (UserOptions AND 4) > 0
  550.      ZUpperCase = (UserOptions AND 8) > 0
  551.      ZLineFeeds = (UserOptions AND 16) > 0
  552.      ZCheckBulletLogon = (UserOptions AND 32) > 0
  553.      ZSkipFilesLogon = (UserOptions AND 64) > 0
  554.      ZAutoDownDesired = (UserOptions AND 128) > 0
  555.      ZReqQuesAnswered = (UserOptions AND 256) > 0
  556.      ZMailWaiting = (UserOptions AND 512) > 0
  557.      WasX = (UserOptions AND 1024 ) > 0
  558.      CALL SetHiLite (NOT WasX)
  559.      IF NOT ZHiLiteOff THEN _
  560.         CALL QuickTPut (ZEmphasizeOff$,0)
  561.      ZTurboKeyUser = (UserOptions AND 2048) > 0
  562.      ZTurboKey = ZFalse
  563.      GOSUB 11480
  564. * ------[ first line different ]------
  565.      ZFullScreenEditor = (UserOptions AND 4096) > 0
  566.      ZPageLength = ASC(MID$(ZUserOption$,13,1))
  567.      IF SubBoard THEN _
  568.         GOTO 9520
  569.      WasX$ = ZEchoer$
  570.      ZEchoer$ = MID$(ZUserOption$,14,1)
  571.      IF INSTR("ICR",ZEchoer$) = 0 THEN _
  572.         ZEchoer$ = "R"
  573.      IF WasX$ <> ZEchoer$ THEN _
  574.         GOSUB 9525
  575.      CALL SetEcho (ZEchoer$)
  576. * REPLACING old line(s) by new
  577. 9760 ' ****  [entry when want review plus chance to read] *********
  578.      GOSUB 9750
  579.      IF NumNewBullets > 0 THEN _
  580.         ZLastIndex = NumNewBullets + 1 : _
  581. * ------[ first line different ]------
  582.         ZOutTxt$ = "Read ALL new bulletins ([Y],N)" : _
  583.         GOSUB 12999 : _
  584.         IF NOT ZNo THEN _
  585.            ZAnsIndex = 1: _
  586.            GOTO 9700
  587.      ZLastIndex = 0
  588.      IF ZAnsIndex < 1 THEN _
  589.         RETURN
  590.      GOTO 9701
  591. '
  592. ' *  W - COMMAND FROM MAIN MENU (WHO'S ON THE OTHER NODES)
  593. '
  594. * REPLACING old line(s) by new
  595. 10570 IF MinsRemaining > 1 AND (ZTurboKeyUser OR NOT ZExpertUser) THEN _
  596. * ------[ first line different ]------
  597.          ZOutTxt$ = "Really Log Off (Y,[N])" : _
  598.          GOSUB 12930 : _
  599.          IF NOT ZYes THEN _
  600.             RETURN
  601.       GetOut = ZTrue
  602.       GOTO 10560
  603. * REPLACING old line(s) by new
  604. 10970 IF NOT ZDoorsAvail OR _
  605.          (ZRequiredRings = 0 AND NOT ZNoDoorProtect) THEN _
  606. * ------[ first line different ]------
  607.          CALL QuickTPut1 ("No DOORs are available.") : _
  608.          RETURN
  609.       IF ZTimeLock AND 1 AND NOT ZHasDoored THEN _
  610.          CALL TimeLock : _
  611.          IF NOT ZOK THEN _
  612.             RETURN
  613. * REPLACING old line(s) by new
  614. * ------[ first line different ]------
  615. 12800 CALL NewPassword ("Enter a password you'll use to logon again",ZFalse)
  616.       IF ZSubParm < 0 THEN _
  617.          GOTO 202
  618.       IF UserSecLevelSave < ZSysopSecLevel THEN _
  619.          IF ZUserIn$ = SPACE$(LEN(ZUserIn$)) THEN _
  620.             GOTO 12800
  621.       LSET ZPswd$ = ZWasZ$
  622.       RETURN
  623. '
  624. ' *  GET HASH VALUE FOR CURRENT USER TO LOOK UP IN THE USER'S FILE
  625. '
  626. * REPLACING old line(s) by new
  627. 42700 CALL SkipLine (1)
  628.       CALL QuickTPut1 ("TurboKey: act on 1 char command without waiting for [ENTER]")
  629.       ZOutTxt$ = "Want TurboKeys (Y/[N])"
  630.       GOSUB 12999
  631.       ZTurboKeyUser = NOT ZYes
  632.       CALL Toggle (8)
  633.       RETURN
  634. '
  635. * ------[ first line different ]------
  636. ' * EDITOR SET FOR NEW USERS
  637. '
  638. * INSERTING new line(s)
  639. 42750 ZOutTxt$ = "Use the Full Screen editor for messages (Y/[N])"
  640.       GOSUB 12999
  641.       ZFullScreenEditor = NOT ZYes
  642.       CALL Toggle (11)
  643.       RETURN
  644. '
  645. ' *  F - COMMAND FROM UTILITY MENU (FILE Transfer DEFALUT MODE)
  646. ' *  FILE Transfer DEFAULT SET FOR NEW USERS
  647. '
  648. * REPLACING old line(s) by new
  649. * ------[ first line different ]------
  650. 43000 ZPrevPUI$ = ""
  651.       GOSUB 43005
  652.       GOTO 43022
  653. * REPLACING old line(s) by new
  654. * ------[ first line different ]------
  655. 43020 ZOutTxt$ = "Text Graphics: " + _
  656.            MID$("None AsciiColor",ZWasGR * 5 + 1,5)
  657.       GOSUB 12979
  658.       RETURN
  659. * REPLACING old line(s) by new
  660. * ------[ first line different ]------
  661. 43022 ZPrevPUI$ = ""
  662.       IF ZEmphasizeOnDef$ = "" THEN _
  663.          RETURN
  664.       ZOutTxt$ = "Do you want colored prompts ([Y],N)"
  665.       GOSUB 12999
  666.       ZHiLiteOff = NOT ZNo
  667.       CALL Toggle(5)
  668.       RETURN
  669.